In recent years, multiprocessors and multithreads are used as technologies for causing a computer to execute a plurality of tasks in parallel and for causing a plurality of processors to cooperatively execute a task at a high speed. In these technologies, a plurality of information processing units, such as processors or threads, share a contended resource such as a memory or an input/output device.
Heretofore, a method for enabling high-speed acquisition and release of a contended resource by changing an algorithm used for arbitration of the contention depending on whether the degree of contention is relatively low or high when the arbitration for the contended resource is performed, has been proposed (refer to nonpatent literature 1). According to the method disclosed in nonpatent literature 1, a contended resource, in particular, can be acquired and released at a high speed compared to other methods.
(Nonpatent Literature 1)
Tamiya Onodera and Kiyokuni Kawachiya: “A Study of Locking Objects with Bimodal Fields,” in Proceedings of OOPSLA '99.
However, there are cases where only a specific information processing unit among a plurality of information processing units frequently acquires and releases a contended resource. According to known technologies, even in such cases, the specific information processing unit needs to execute a process while operating to the exclusion of the other information processing units in the acquisition of the contended resource. This has made it difficult to improve a processing speed.